//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------

function write(v) { WScript.Echo(v + ""); }

function foo() {}

write(new String('he' + 'llo') <= new Object());
write(new String('he' + 'llo') <= new Object());
write(new String('he' + 'llo') <= [1, 2, 3]);
write(new String('he' + 'llo') <= [1 ,2 , 3]);
write(new String('he' + 'llo') <= new Array(3));
write(new String('he' + 'llo') <= Array(3));
write(new String('he' + 'llo') <= new Array(1 ,2 ,3));
write(new String('he' + 'llo') <= Array(1));
write(new String('he' + 'llo') <= foo);
write(new Object() <= undefined);
write(new Object() <= null);
write(new Object() <= true);
write(new Object() <= false);
write(new Object() <= Boolean(true));
write(new Object() <= Boolean(false));
write(new Object() <= new Boolean(true));
write(new Object() <= new Boolean(false));
write(new Object() <= NaN);
write(new Object() <= +0);
write(new Object() <= -0);
write(new Object() <= 0);
write(new Object() <= 0.0);
write(new Object() <= -0.0);
write(new Object() <= +0.0);
write(new Object() <= 1);
write(new Object() <= 10);
write(new Object() <= 10.0);
write(new Object() <= 10.1);
write(new Object() <= -1);
write(new Object() <= -10);
write(new Object() <= -10.0);
write(new Object() <= -10.1);
write(new Object() <= Number.MAX_VALUE);
write(new Object() <= Number.MIN_VALUE);
write(new Object() <= Number.NaN);
write(new Object() <= Number.POSITIVE_INFINITY);
write(new Object() <= Number.NEGATIVE_INFINITY);
write(new Object() <= new Number(NaN));
write(new Object() <= new Number(+0));
write(new Object() <= new Number(-0));
write(new Object() <= new Number(0));
write(new Object() <= new Number(0.0));
write(new Object() <= new Number(-0.0));
write(new Object() <= new Number(+0.0));
write(new Object() <= new Number(1));
write(new Object() <= new Number(10));
write(new Object() <= new Number(10.0));
write(new Object() <= new Number(10.1));
write(new Object() <= new Number(-1));
write(new Object() <= new Number(-10));
write(new Object() <= new Number(-10.0));
write(new Object() <= new Number(-10.1));
write(new Object() <= new Number(Number.MAX_VALUE));
write(new Object() <= new Number(Number.MIN_VALUE));
write(new Object() <= new Number(Number.NaN));
write(new Object() <= new Number(Number.POSITIVE_INFINITY));
write(new Object() <= new Number(Number.NEGATIVE_INFINITY));
write(new Object() <= '');
write(new Object() <= 0xa);
write(new Object() <= 04);
write(new Object() <= 'hello');
write(new Object() <= 'hel' + 'lo');
write(new Object() <= String(''));
write(new Object() <= String('hello'));
write(new Object() <= String('h' + 'ello'));
write(new Object() <= new String(''));
write(new Object() <= new String('hello'));
write(new Object() <= new String('he' + 'llo'));
write(new Object() <= new Object());
write(new Object() <= new Object());
write(new Object() <= [1, 2, 3]);
write(new Object() <= [1 ,2 , 3]);
write(new Object() <= new Array(3));
write(new Object() <= Array(3));
write(new Object() <= new Array(1 ,2 ,3));
write(new Object() <= Array(1));
write(new Object() <= foo);
write(new Object() <= undefined);
write(new Object() <= null);
write(new Object() <= true);
write(new Object() <= false);
write(new Object() <= Boolean(true));
write(new Object() <= Boolean(false));
write(new Object() <= new Boolean(true));
write(new Object() <= new Boolean(false));
write(new Object() <= NaN);
write(new Object() <= +0);
write(new Object() <= -0);
write(new Object() <= 0);
write(new Object() <= 0.0);
write(new Object() <= -0.0);
write(new Object() <= +0.0);
write(new Object() <= 1);
write(new Object() <= 10);
write(new Object() <= 10.0);
write(new Object() <= 10.1);
write(new Object() <= -1);
write(new Object() <= -10);
write(new Object() <= -10.0);
write(new Object() <= -10.1);
write(new Object() <= Number.MAX_VALUE);
write(new Object() <= Number.MIN_VALUE);
write(new Object() <= Number.NaN);
write(new Object() <= Number.POSITIVE_INFINITY);
write(new Object() <= Number.NEGATIVE_INFINITY);
write(new Object() <= new Number(NaN));
write(new Object() <= new Number(+0));
write(new Object() <= new Number(-0));
write(new Object() <= new Number(0));
write(new Object() <= new Number(0.0));
write(new Object() <= new Number(-0.0));
write(new Object() <= new Number(+0.0));
write(new Object() <= new Number(1));
write(new Object() <= new Number(10));
write(new Object() <= new Number(10.0));
write(new Object() <= new Number(10.1));
write(new Object() <= new Number(-1));
write(new Object() <= new Number(-10));
write(new Object() <= new Number(-10.0));
write(new Object() <= new Number(-10.1));
write(new Object() <= new Number(Number.MAX_VALUE));
write(new Object() <= new Number(Number.MIN_VALUE));
write(new Object() <= new Number(Number.NaN));
write(new Object() <= new Number(Number.POSITIVE_INFINITY));
write(new Object() <= new Number(Number.NEGATIVE_INFINITY));
write(new Object() <= '');
write(new Object() <= 0xa);
write(new Object() <= 04);
write(new Object() <= 'hello');
write(new Object() <= 'hel' + 'lo');
write(new Object() <= String(''));
write(new Object() <= String('hello'));
write(new Object() <= String('h' + 'ello'));
write(new Object() <= new String(''));
write(new Object() <= new String('hello'));
write(new Object() <= new String('he' + 'llo'));
write(new Object() <= new Object());
write(new Object() <= new Object());
write(new Object() <= [1, 2, 3]);
write(new Object() <= [1 ,2 , 3]);
write(new Object() <= new Array(3));
write(new Object() <= Array(3));
write(new Object() <= new Array(1 ,2 ,3));
write(new Object() <= Array(1));
write(new Object() <= foo);
write([1, 2, 3] <= undefined);
write([1, 2, 3] <= null);
write([1, 2, 3] <= true);
write([1, 2, 3] <= false);
write([1, 2, 3] <= Boolean(true));
write([1, 2, 3] <= Boolean(false));
write([1, 2, 3] <= new Boolean(true));
write([1, 2, 3] <= new Boolean(false));
write([1, 2, 3] <= NaN);
write([1, 2, 3] <= +0);
write([1, 2, 3] <= -0);
write([1, 2, 3] <= 0);
write([1, 2, 3] <= 0.0);
write([1, 2, 3] <= -0.0);
write([1, 2, 3] <= +0.0);
write([1, 2, 3] <= 1);
write([1, 2, 3] <= 10);
write([1, 2, 3] <= 10.0);
write([1, 2, 3] <= 10.1);
write([1, 2, 3] <= -1);
write([1, 2, 3] <= -10);
write([1, 2, 3] <= -10.0);
write([1, 2, 3] <= -10.1);
write([1, 2, 3] <= Number.MAX_VALUE);
write([1, 2, 3] <= Number.MIN_VALUE);
write([1, 2, 3] <= Number.NaN);
write([1, 2, 3] <= Number.POSITIVE_INFINITY);
write([1, 2, 3] <= Number.NEGATIVE_INFINITY);
write([1, 2, 3] <= new Number(NaN));
write([1, 2, 3] <= new Number(+0));
write([1, 2, 3] <= new Number(-0));
write([1, 2, 3] <= new Number(0));
write([1, 2, 3] <= new Number(0.0));
write([1, 2, 3] <= new Number(-0.0));
write([1, 2, 3] <= new Number(+0.0));
write([1, 2, 3] <= new Number(1));
write([1, 2, 3] <= new Number(10));
write([1, 2, 3] <= new Number(10.0));
write([1, 2, 3] <= new Number(10.1));
write([1, 2, 3] <= new Number(-1));
write([1, 2, 3] <= new Number(-10));
write([1, 2, 3] <= new Number(-10.0));
write([1, 2, 3] <= new Number(-10.1));
write([1, 2, 3] <= new Number(Number.MAX_VALUE));
write([1, 2, 3] <= new Number(Number.MIN_VALUE));
write([1, 2, 3] <= new Number(Number.NaN));
write([1, 2, 3] <= new Number(Number.POSITIVE_INFINITY));
write([1, 2, 3] <= new Number(Number.NEGATIVE_INFINITY));
write([1, 2, 3] <= '');
write([1, 2, 3] <= 0xa);
write([1, 2, 3] <= 04);
write([1, 2, 3] <= 'hello');
write([1, 2, 3] <= 'hel' + 'lo');
write([1, 2, 3] <= String(''));
write([1, 2, 3] <= String('hello'));
write([1, 2, 3] <= String('h' + 'ello'));
write([1, 2, 3] <= new String(''));
write([1, 2, 3] <= new String('hello'));
write([1, 2, 3] <= new String('he' + 'llo'));
write([1, 2, 3] <= new Object());
write([1, 2, 3] <= new Object());
write([1, 2, 3] <= [1, 2, 3]);
write([1, 2, 3] <= [1 ,2 , 3]);
write([1, 2, 3] <= new Array(3));
write([1, 2, 3] <= Array(3));
write([1, 2, 3] <= new Array(1 ,2 ,3));
write([1, 2, 3] <= Array(1));
write([1, 2, 3] <= foo);
write([1 ,2 , 3] <= undefined);
write([1 ,2 , 3] <= null);
write([1 ,2 , 3] <= true);
write([1 ,2 , 3] <= false);
write([1 ,2 , 3] <= Boolean(true));
write([1 ,2 , 3] <= Boolean(false));
write([1 ,2 , 3] <= new Boolean(true));
write([1 ,2 , 3] <= new Boolean(false));
write([1 ,2 , 3] <= NaN);
write([1 ,2 , 3] <= +0);
write([1 ,2 , 3] <= -0);
write([1 ,2 , 3] <= 0);
write([1 ,2 , 3] <= 0.0);
write([1 ,2 , 3] <= -0.0);
write([1 ,2 , 3] <= +0.0);
write([1 ,2 , 3] <= 1);
write([1 ,2 , 3] <= 10);
write([1 ,2 , 3] <= 10.0);
write([1 ,2 , 3] <= 10.1);
write([1 ,2 , 3] <= -1);
write([1 ,2 , 3] <= -10);
write([1 ,2 , 3] <= -10.0);
write([1 ,2 , 3] <= -10.1);
write([1 ,2 , 3] <= Number.MAX_VALUE);
write([1 ,2 , 3] <= Number.MIN_VALUE);
write([1 ,2 , 3] <= Number.NaN);
write([1 ,2 , 3] <= Number.POSITIVE_INFINITY);
write([1 ,2 , 3] <= Number.NEGATIVE_INFINITY);
write([1 ,2 , 3] <= new Number(NaN));
write([1 ,2 , 3] <= new Number(+0));
write([1 ,2 , 3] <= new Number(-0));
write([1 ,2 , 3] <= new Number(0));
write([1 ,2 , 3] <= new Number(0.0));
write([1 ,2 , 3] <= new Number(-0.0));
write([1 ,2 , 3] <= new Number(+0.0));
write([1 ,2 , 3] <= new Number(1));
write([1 ,2 , 3] <= new Number(10));
write([1 ,2 , 3] <= new Number(10.0));
write([1 ,2 , 3] <= new Number(10.1));
write([1 ,2 , 3] <= new Number(-1));
write([1 ,2 , 3] <= new Number(-10));
write([1 ,2 , 3] <= new Number(-10.0));
write([1 ,2 , 3] <= new Number(-10.1));
write([1 ,2 , 3] <= new Number(Number.MAX_VALUE));
write([1 ,2 , 3] <= new Number(Number.MIN_VALUE));
write([1 ,2 , 3] <= new Number(Number.NaN));
write([1 ,2 , 3] <= new Number(Number.POSITIVE_INFINITY));
write([1 ,2 , 3] <= new Number(Number.NEGATIVE_INFINITY));
write([1 ,2 , 3] <= '');
write([1 ,2 , 3] <= 0xa);
write([1 ,2 , 3] <= 04);
write([1 ,2 , 3] <= 'hello');
write([1 ,2 , 3] <= 'hel' + 'lo');
write([1 ,2 , 3] <= String(''));
write([1 ,2 , 3] <= String('hello'));
write([1 ,2 , 3] <= String('h' + 'ello'));
write([1 ,2 , 3] <= new String(''));
write([1 ,2 , 3] <= new String('hello'));
write([1 ,2 , 3] <= new String('he' + 'llo'));
write([1 ,2 , 3] <= new Object());
write([1 ,2 , 3] <= new Object());
write([1 ,2 , 3] <= [1, 2, 3]);
write([1 ,2 , 3] <= [1 ,2 , 3]);
write([1 ,2 , 3] <= new Array(3));
write([1 ,2 , 3] <= Array(3));
write([1 ,2 , 3] <= new Array(1 ,2 ,3));
write([1 ,2 , 3] <= Array(1));
write([1 ,2 , 3] <= foo);
write(new Array(3) <= undefined);
write(new Array(3) <= null);
write(new Array(3) <= true);
write(new Array(3) <= false);
write(new Array(3) <= Boolean(true));
write(new Array(3) <= Boolean(false));
write(new Array(3) <= new Boolean(true));
write(new Array(3) <= new Boolean(false));
write(new Array(3) <= NaN);
write(new Array(3) <= +0);
write(new Array(3) <= -0);
write(new Array(3) <= 0);
write(new Array(3) <= 0.0);
write(new Array(3) <= -0.0);
write(new Array(3) <= +0.0);
write(new Array(3) <= 1);
write(new Array(3) <= 10);
write(new Array(3) <= 10.0);
write(new Array(3) <= 10.1);
write(new Array(3) <= -1);
write(new Array(3) <= -10);
write(new Array(3) <= -10.0);
write(new Array(3) <= -10.1);
write(new Array(3) <= Number.MAX_VALUE);
write(new Array(3) <= Number.MIN_VALUE);
write(new Array(3) <= Number.NaN);
write(new Array(3) <= Number.POSITIVE_INFINITY);
write(new Array(3) <= Number.NEGATIVE_INFINITY);
write(new Array(3) <= new Number(NaN));
write(new Array(3) <= new Number(+0));
write(new Array(3) <= new Number(-0));
write(new Array(3) <= new Number(0));
write(new Array(3) <= new Number(0.0));
write(new Array(3) <= new Number(-0.0));
write(new Array(3) <= new Number(+0.0));
write(new Array(3) <= new Number(1));
write(new Array(3) <= new Number(10));
write(new Array(3) <= new Number(10.0));
write(new Array(3) <= new Number(10.1));
write(new Array(3) <= new Number(-1));
write(new Array(3) <= new Number(-10));
write(new Array(3) <= new Number(-10.0));
write(new Array(3) <= new Number(-10.1));
write(new Array(3) <= new Number(Number.MAX_VALUE));
write(new Array(3) <= new Number(Number.MIN_VALUE));
write(new Array(3) <= new Number(Number.NaN));
write(new Array(3) <= new Number(Number.POSITIVE_INFINITY));
write(new Array(3) <= new Number(Number.NEGATIVE_INFINITY));
write(new Array(3) <= '');
write(new Array(3) <= 0xa);
write(new Array(3) <= 04);
write(new Array(3) <= 'hello');
write(new Array(3) <= 'hel' + 'lo');
write(new Array(3) <= String(''));
write(new Array(3) <= String('hello'));
write(new Array(3) <= String('h' + 'ello'));
write(new Array(3) <= new String(''));
write(new Array(3) <= new String('hello'));
write(new Array(3) <= new String('he' + 'llo'));
write(new Array(3) <= new Object());
write(new Array(3) <= new Object());
write(new Array(3) <= [1, 2, 3]);
write(new Array(3) <= [1 ,2 , 3]);
write(new Array(3) <= new Array(3));
write(new Array(3) <= Array(3));
write(new Array(3) <= new Array(1 ,2 ,3));
write(new Array(3) <= Array(1));
write(new Array(3) <= foo);
write(Array(3) <= undefined);
write(Array(3) <= null);
write(Array(3) <= true);
write(Array(3) <= false);
write(Array(3) <= Boolean(true));
write(Array(3) <= Boolean(false));
write(Array(3) <= new Boolean(true));
write(Array(3) <= new Boolean(false));
write(Array(3) <= NaN);
write(Array(3) <= +0);
write(Array(3) <= -0);
write(Array(3) <= 0);
write(Array(3) <= 0.0);
write(Array(3) <= -0.0);
write(Array(3) <= +0.0);
write(Array(3) <= 1);
write(Array(3) <= 10);
write(Array(3) <= 10.0);
write(Array(3) <= 10.1);
write(Array(3) <= -1);
write(Array(3) <= -10);
write(Array(3) <= -10.0);
write(Array(3) <= -10.1);
write(Array(3) <= Number.MAX_VALUE);
write(Array(3) <= Number.MIN_VALUE);
write(Array(3) <= Number.NaN);
write(Array(3) <= Number.POSITIVE_INFINITY);
write(Array(3) <= Number.NEGATIVE_INFINITY);
write(Array(3) <= new Number(NaN));
write(Array(3) <= new Number(+0));
write(Array(3) <= new Number(-0));
write(Array(3) <= new Number(0));
write(Array(3) <= new Number(0.0));
write(Array(3) <= new Number(-0.0));
write(Array(3) <= new Number(+0.0));
write(Array(3) <= new Number(1));
write(Array(3) <= new Number(10));
write(Array(3) <= new Number(10.0));
write(Array(3) <= new Number(10.1));
write(Array(3) <= new Number(-1));
write(Array(3) <= new Number(-10));
write(Array(3) <= new Number(-10.0));
write(Array(3) <= new Number(-10.1));
write(Array(3) <= new Number(Number.MAX_VALUE));
write(Array(3) <= new Number(Number.MIN_VALUE));
write(Array(3) <= new Number(Number.NaN));
write(Array(3) <= new Number(Number.POSITIVE_INFINITY));
write(Array(3) <= new Number(Number.NEGATIVE_INFINITY));
write(Array(3) <= '');
write(Array(3) <= 0xa);
write(Array(3) <= 04);
write(Array(3) <= 'hello');
write(Array(3) <= 'hel' + 'lo');
write(Array(3) <= String(''));
write(Array(3) <= String('hello'));
write(Array(3) <= String('h' + 'ello'));
write(Array(3) <= new String(''));
write(Array(3) <= new String('hello'));
write(Array(3) <= new String('he' + 'llo'));
write(Array(3) <= new Object());
write(Array(3) <= new Object());
write(Array(3) <= [1, 2, 3]);
write(Array(3) <= [1 ,2 , 3]);
write(Array(3) <= new Array(3));
write(Array(3) <= Array(3));
write(Array(3) <= new Array(1 ,2 ,3));
write(Array(3) <= Array(1));
write(Array(3) <= foo);
write(new Array(1 ,2 ,3) <= undefined);
write(new Array(1 ,2 ,3) <= null);
write(new Array(1 ,2 ,3) <= true);
write(new Array(1 ,2 ,3) <= false);
write(new Array(1 ,2 ,3) <= Boolean(true));
write(new Array(1 ,2 ,3) <= Boolean(false));
write(new Array(1 ,2 ,3) <= new Boolean(true));
write(new Array(1 ,2 ,3) <= new Boolean(false));
write(new Array(1 ,2 ,3) <= NaN);
write(new Array(1 ,2 ,3) <= +0);
write(new Array(1 ,2 ,3) <= -0);
write(new Array(1 ,2 ,3) <= 0);
write(new Array(1 ,2 ,3) <= 0.0);
write(new Array(1 ,2 ,3) <= -0.0);
write(new Array(1 ,2 ,3) <= +0.0);
write(new Array(1 ,2 ,3) <= 1);
write(new Array(1 ,2 ,3) <= 10);
write(new Array(1 ,2 ,3) <= 10.0);
write(new Array(1 ,2 ,3) <= 10.1);
write(new Array(1 ,2 ,3) <= -1);
write(new Array(1 ,2 ,3) <= -10);
write(new Array(1 ,2 ,3) <= -10.0);
write(new Array(1 ,2 ,3) <= -10.1);
write(new Array(1 ,2 ,3) <= Number.MAX_VALUE);
write(new Array(1 ,2 ,3) <= Number.MIN_VALUE);
write(new Array(1 ,2 ,3) <= Number.NaN);
write(new Array(1 ,2 ,3) <= Number.POSITIVE_INFINITY);
write(new Array(1 ,2 ,3) <= Number.NEGATIVE_INFINITY);
write(new Array(1 ,2 ,3) <= new Number(NaN));
write(new Array(1 ,2 ,3) <= new Number(+0));
write(new Array(1 ,2 ,3) <= new Number(-0));
write(new Array(1 ,2 ,3) <= new Number(0));
write(new Array(1 ,2 ,3) <= new Number(0.0));
write(new Array(1 ,2 ,3) <= new Number(-0.0));
write(new Array(1 ,2 ,3) <= new Number(+0.0));
write(new Array(1 ,2 ,3) <= new Number(1));
write(new Array(1 ,2 ,3) <= new Number(10));
write(new Array(1 ,2 ,3) <= new Number(10.0));
write(new Array(1 ,2 ,3) <= new Number(10.1));
write(new Array(1 ,2 ,3) <= new Number(-1));
write(new Array(1 ,2 ,3) <= new Number(-10));
write(new Array(1 ,2 ,3) <= new Number(-10.0));
write(new Array(1 ,2 ,3) <= new Number(-10.1));
write(new Array(1 ,2 ,3) <= new Number(Number.MAX_VALUE));
write(new Array(1 ,2 ,3) <= new Number(Number.MIN_VALUE));
write(new Array(1 ,2 ,3) <= new Number(Number.NaN));
write(new Array(1 ,2 ,3) <= new Number(Number.POSITIVE_INFINITY));
write(new Array(1 ,2 ,3) <= new Number(Number.NEGATIVE_INFINITY));
write(new Array(1 ,2 ,3) <= '');
write(new Array(1 ,2 ,3) <= 0xa);
write(new Array(1 ,2 ,3) <= 04);
write(new Array(1 ,2 ,3) <= 'hello');
write(new Array(1 ,2 ,3) <= 'hel' + 'lo');
write(new Array(1 ,2 ,3) <= String(''));
write(new Array(1 ,2 ,3) <= String('hello'));
write(new Array(1 ,2 ,3) <= String('h' + 'ello'));
write(new Array(1 ,2 ,3) <= new String(''));
write(new Array(1 ,2 ,3) <= new String('hello'));
write(new Array(1 ,2 ,3) <= new String('he' + 'llo'));
write(new Array(1 ,2 ,3) <= new Object());
write(new Array(1 ,2 ,3) <= new Object());
write(new Array(1 ,2 ,3) <= [1, 2, 3]);
write(new Array(1 ,2 ,3) <= [1 ,2 , 3]);
write(new Array(1 ,2 ,3) <= new Array(3));
write(new Array(1 ,2 ,3) <= Array(3));
write(new Array(1 ,2 ,3) <= new Array(1 ,2 ,3));
write(new Array(1 ,2 ,3) <= Array(1));
write(new Array(1 ,2 ,3) <= foo);
write(Array(1) <= undefined);
write(Array(1) <= null);
write(Array(1) <= true);
write(Array(1) <= false);
write(Array(1) <= Boolean(true));
write(Array(1) <= Boolean(false));
write(Array(1) <= new Boolean(true));
write(Array(1) <= new Boolean(false));
write(Array(1) <= NaN);
write(Array(1) <= +0);
write(Array(1) <= -0);
write(Array(1) <= 0);
write(Array(1) <= 0.0);
write(Array(1) <= -0.0);
write(Array(1) <= +0.0);
write(Array(1) <= 1);
write(Array(1) <= 10);
write(Array(1) <= 10.0);
write(Array(1) <= 10.1);
write(Array(1) <= -1);
write(Array(1) <= -10);
write(Array(1) <= -10.0);
write(Array(1) <= -10.1);
write(Array(1) <= Number.MAX_VALUE);
write(Array(1) <= Number.MIN_VALUE);
write(Array(1) <= Number.NaN);
write(Array(1) <= Number.POSITIVE_INFINITY);
write(Array(1) <= Number.NEGATIVE_INFINITY);
write(Array(1) <= new Number(NaN));
write(Array(1) <= new Number(+0));
write(Array(1) <= new Number(-0));
write(Array(1) <= new Number(0));
write(Array(1) <= new Number(0.0));
write(Array(1) <= new Number(-0.0));
write(Array(1) <= new Number(+0.0));
write(Array(1) <= new Number(1));
write(Array(1) <= new Number(10));
write(Array(1) <= new Number(10.0));
write(Array(1) <= new Number(10.1));
write(Array(1) <= new Number(-1));
write(Array(1) <= new Number(-10));
write(Array(1) <= new Number(-10.0));
write(Array(1) <= new Number(-10.1));
write(Array(1) <= new Number(Number.MAX_VALUE));
write(Array(1) <= new Number(Number.MIN_VALUE));
write(Array(1) <= new Number(Number.NaN));
write(Array(1) <= new Number(Number.POSITIVE_INFINITY));
write(Array(1) <= new Number(Number.NEGATIVE_INFINITY));
write(Array(1) <= '');
write(Array(1) <= 0xa);
write(Array(1) <= 04);
write(Array(1) <= 'hello');
write(Array(1) <= 'hel' + 'lo');
write(Array(1) <= String(''));
write(Array(1) <= String('hello'));
write(Array(1) <= String('h' + 'ello'));
write(Array(1) <= new String(''));
write(Array(1) <= new String('hello'));
write(Array(1) <= new String('he' + 'llo'));
write(Array(1) <= new Object());
write(Array(1) <= new Object());
write(Array(1) <= [1, 2, 3]);
write(Array(1) <= [1 ,2 , 3]);
write(Array(1) <= new Array(3));
write(Array(1) <= Array(3));
write(Array(1) <= new Array(1 ,2 ,3));
write(Array(1) <= Array(1));
write(Array(1) <= foo);
write(foo <= undefined);
write(foo <= null);
write(foo <= true);
write(foo <= false);
write(foo <= Boolean(true));
write(foo <= Boolean(false));
write(foo <= new Boolean(true));
write(foo <= new Boolean(false));
write(foo <= NaN);
write(foo <= +0);
write(foo <= -0);
write(foo <= 0);
write(foo <= 0.0);
write(foo <= -0.0);
write(foo <= +0.0);
write(foo <= 1);
write(foo <= 10);
write(foo <= 10.0);
write(foo <= 10.1);
write(foo <= -1);
write(foo <= -10);
write(foo <= -10.0);
write(foo <= -10.1);
write(foo <= Number.MAX_VALUE);
write(foo <= Number.MIN_VALUE);
write(foo <= Number.NaN);
write(foo <= Number.POSITIVE_INFINITY);
write(foo <= Number.NEGATIVE_INFINITY);
write(foo <= new Number(NaN));
write(foo <= new Number(+0));
write(foo <= new Number(-0));
write(foo <= new Number(0));
write(foo <= new Number(0.0));
write(foo <= new Number(-0.0));
write(foo <= new Number(+0.0));
write(foo <= new Number(1));
write(foo <= new Number(10));
write(foo <= new Number(10.0));
write(foo <= new Number(10.1));
write(foo <= new Number(-1));
write(foo <= new Number(-10));
write(foo <= new Number(-10.0));
write(foo <= new Number(-10.1));
write(foo <= new Number(Number.MAX_VALUE));
write(foo <= new Number(Number.MIN_VALUE));
write(foo <= new Number(Number.NaN));
write(foo <= new Number(Number.POSITIVE_INFINITY));
write(foo <= new Number(Number.NEGATIVE_INFINITY));
write(foo <= '');
write(foo <= 0xa);
write(foo <= 04);
write(foo <= 'hello');
write(foo <= 'hel' + 'lo');
write(foo <= String(''));
write(foo <= String('hello'));
write(foo <= String('h' + 'ello'));
write(foo <= new String(''));
write(foo <= new String('hello'));
write(foo <= new String('he' + 'llo'));
write(foo <= new Object());
write(foo <= new Object());
write(foo <= [1, 2, 3]);
write(foo <= [1 ,2 , 3]);
write(foo <= new Array(3));
write(foo <= Array(3));
write(foo <= new Array(1 ,2 ,3));
write(foo <= Array(1));
write(foo <= foo);
